﻿<%@ Page Title="" Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true"
    CodeFile="InfrtoductionToWPF.aspx.cs" Inherits="InfrtoductionToWPF" %>

<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="Server">
    <link href="../Style/LessonsStyle.css" rel="stylesheet" type="text/css" />
    Въведение в WPF<br />
    Съдържание:<ul>
        <li>Какво представлява WPF </li>
        <li>Основни характеристики на WPF</li>
        <li>WPF и другите технологии</li>
        <li>WPF архитектура</li>
        <li>Основи на XAML </li>
    </ul>
    <div>
        <p>
            Какво представлява WPF
        </p>
        <p>
            <span>Windows Presentation Foundation (WPF) е напълно нова графична система разработена
                специално от Майкрософт(Microsoft) за операционната система Уиндосв(Windows). Повлияна
                от съвременните продукти като ХТМЛ и Фласх тя е напулно конкурентно способна и в
                някои отношения дори по-добра заради хардуерната поддръжка която получава. Освен
                това предоставя пълно логическо разделение между потеребитеслия интерфеис и бизнес
                логиката на приложението.</span></p>
    </div>
    <div>
        <p>
            Основни характеристики на WPF
        </p>
        <p>
            <span>WPF включва в себеси изключително богата база от шрифтови, печатарски библиотеки
                и методи за изобразяване на текстове част от които дори не са на на разположение
                на GDI библиотеките. Това позволява да се създават текстове които съдържат интернационални
                шрифтове. С технологията ClearType WPF взема преимущество в рендерирането на текст.
                Също така позволява кеширане на рендерирания текст и видео в паметта. От архитекрурна
                гледна точка WPF е резолюционно независима технология. </span>
        </p>
        <p>
            <span>Цялата графика е базирана на Direct3D. Direct3D технологията се използва в приложения
                за които бързодействието е от изключителна важност. С помоща на видео адаптера се
                подобрява и ускорява производителността на приложението.Графиката е векторно базирана
                с което се избягва неприятния ефенкт на пикселизация и се повишава качеството. Освен
                това WPF имплементира в себе си Floating-point logical pixel system и поддържа 32-битов
                ARGB цвят. </span>
        </p>
        <p>
            <span>Анимацията в WPF е time-based. Презентационния таимер се инициализира и управлява
                чрез WPF. Различните сцени се променят и координират чрез изполването на storyboard.
                Анимациите в WPF могат да се задеистват от както от вътрешни евенти така и от действията
                на потребителя. Освен това анимацията може да се дефинира директно в XAML кода.</span>
        </p>
        <p>
            <span>Аудио и видео поддръжка. Аудио поддръжката преставлява много тънък слой между
                Win32 и WMP функционанлността. WPF включва функционалност която позволява изпълнение
                на на WMV, MPEG AVI формати. Също така съществува връзка между видео и анимация.
                И двете технологии са базиране на движението на картинки и могат да се синхронизират
                с медиа. </span>
        </p>
        <p>
            <span>Стиловете и темплейтете в WPF. Стиловете преставляват съвкупност от пропъртита
                които се прилагат върху съдържанието чрез видео рендериране. потребителя може да
                ги стандартизира и форматира по опраделена характеристика. WPF стиловете има и специфична
                характеристика при билдването на приложението това е способността им да прилагат
                специфични визуални ефекти базирани на потребителските евенти. Темплейтите в WPF
                позволяват пълна промяна на интерфеиса. </span>
        </p>
        <p>
            <span>Commands са може би най абсрактната част на евентите. Поддръжката на Commands
                в WPF намалява количеството на код което пищем. Също така предоставят по голяма
                гъвкавост при промяна на интерфейса без да пострада логическата част на приложението.
                Силата на комнадите идва от три основни характеристики които притежават:<br />
                WPF поддържа различен брои на build-in commands<br />
                Сommands разполагат с автоматична поддръжка за действиля на въвеждане.<br />
                Някои от WPF контролите имат build-in поведение което е вързано с различен брой
                комнади
                <br />
            </span>
        </p>
        <p>
            <span>Декларативен интерфейс с XAML. В WPF се представя нов език XAML (eXtensible Application
                Markup Language) това е напълно декларативен език. Чрез XAML се описва поведението
                и интеграцията на компонентите. </span>
        </p>
    </div>
    <div>
        <p>
            WPF и другите технологии
        </p>
        <p>
            <span>Windows Forms<br />
                Това е кулминацията на технологии като GDI/GDI+ и User32. Доста по-зряла от WPF,
                но с изчерпани възножности. </span>
        </p>
        <p>
            <span>DirectX<br />
                WPF създава приложения с real-time графика като сложните симолатори които симолират
                физическата реалност.</span>
        </p>
        <p>
            <span>Silverlight<br />
                Или WPF/E Windows Presentation Foundation/Everywhere. Това е между платформена и
                между браузърна технология която влючва в себеси ѝАМЛ предоставя доста от възможностите
                на WPF за възпроизвеждане на видео, графика и анимация. Silverligh и WPF споделят
                единствено пресентазиионнтия слой.</span>
        </p>
    </div>
    <div>
        <p>
            WPF архитектура
        </p>
        <p>
            <span>Media integration layed (mil) се намира в milcore.dll. Това асембли работи директно
                с DirectX, предоставя основна поддръжка за 2D и 3D, компостира отделните елементи
                в WPF в краина 3D сцена.</span>
        </p>
        <p>
            <span>PresentationCode се намира в presentationcore.dll- предоставя основни рапъри за
                MIL и добре имплементирани core сървиси за WPF. Включва property system и message
                dispathing system. С това асембли се управляват нишките и евентите. </span>
        </p>
        <p>
            <span>PresentationFramework се намира в presentationframework.dll това асембли имплементира
                front-end-a на приложенитео - Layouts, Time-dependents, storyborad based animation,
                databinding</span></p>
    </div>
    <div>
        <p>
            Основи на XAML
        </p>
        <p>
            <span>XAML е XML базиран език за създаване и инициализиране на .NET обекти. XAML преставлява
                йерархия от елементти които преставлват визуални обекти познати като потребителски
                интерфейс. Потребитеслите елементи се състоят от общи пропъртита и функциии като
                напривмер widht, height, cursir. Декларирането на XML елементи в XAML е еквивалентно
                на инстанцирането на нови обекти посредством параметри и контструктори.</span>
        </p>
    </div>
</asp:Content>
